package com.sisgh.jefdv1.cmd.command.has.arg;

import com.sisgh.jefdv1.cmd.command.has.arg.argument.Argument;
import com.sisgh.jefdv1.cmd.command.has.arg.argument.impl.OptionMarkerArgument;
import com.sisgh.jefdv1.cmd.command.has.arg.argument.properties.ArgumentProperties;

public class Arguments {

    public static Argument option(String longName, String shortName, boolean required) {
        return new OptionMarkerArgument(longName, shortName, required);
    }

    public static Argument option(ArgumentProperties properties) {
        return new OptionMarkerArgument(properties);
    }

    public static Argument[] options(ArgumentProperties... properties) {
        Argument[] arguments = new Argument[properties.length];
        for (int i = 0; i < properties.length; i++) {
            arguments[i] = new OptionMarkerArgument(properties[i]);
        }
        return arguments;
    }
}
